Boot
Containner
@Componect
- 标记一个类为 Spring 容器管理的组件,表示该类是一个可被 Spring 管理的 Bean,从而实现组件的自动发现和管理
@Respository
- 标记一个类为 Spring 管理的数据访问组件,表示该类负责与数据库或其他持久化存储进行交互
@Bean
- 用于标识一个方法,该方法返回一个对象,该对象将被 Spring 容器识别为一个 Bean。
@Autowired
- 用于自动装配依赖,即根据类型或名称自动将 Spring 容器中的 Bean 注入到目标对象中
@Primary
- 用于标记一个 Bean 作为在多个同类型的 Bean 候选中进行自动装配时的首选 Bean
@Resource("name")
- 通过指定 Bean 的名称,将目标对象与 Spring 容器中名称匹配的 Bean 进行自动装配
@Qualifier("value")
- 通常与 @Autowired 一起使用,用于在按类型匹配到多个候选 Bean 的情况下,进一步按名称指定要注入的 Bean
@PostConstruct
- 在对象初始化完成后执行,确保在依赖注入后进行额外的初始化工作
Config
@SpringBootApplication
- 组合注解
- @Configuration
- @EnableAutoConfiguration
- @ComponentScan
- 组合注解
@Configuration
- 声明一个类为 Spring 的配置类,类似于 Spring XML 配置文件
@EnableAutoConfiguration
- 启用 Spring Boot 的自动配置机制
@ComponentScan
- 指定 Spring 容器扫描的包路径,以便自动发现和注册 Spring 组件
@Value
- 将配置文件中的值注入到 Java 类的字段中
@ConfigurationProperties
- 将配置文件中的属性值自动映射到 Java 类的字段上,实现配置的集中管理和类型安全
Controller
@RestController
- 组合注解
- @Controller
- @ResponseBody
- 组合注解
@Controller
- 标记一个类为 Spring MVC 的控制器,表示该类负责处理客户端的 HTTP 请求并生成响应
@ResponseBody
- 用于将控制器方法的返回值直接作为 HTTP 响应体返回给客户端,而不是通过视图解析器进行视图渲染。
@RequestMapping
- 将 HTTP 请求映射到控制器
- 可以指定请求的路径、HTTP 方法、参数条件、请求头条件、内容类型条件
- value 属性指定了请求的路径
- produces 属性用于指定控制器方法所返回响应的 MIME 内容类型
@GetMapping
- 映射 HTTP GET 请求
@PostMapping
- 映射 HTTP POST 请求
@PutMapping
- 映射 HTTP PUT 请求
@DeleteMapping
- 映射 HTTP DELETE 请求
@RequestParam
- 将 HTTP 请求中的查询参数或表单参数绑定到控制器方法的参数上
- value:指定请求参数的名称
- required:表示参数是否必须存在, 默认值为 true
- defaultValue:参数为空时使用的默认值
- 将 HTTP 请求中的查询参数或表单参数绑定到控制器方法的参数上
@RequestBody
- 将请求 Body 转换为 Java 对象,绑定 HTTP 请求中的请求体到方法参数上
@DateTimeFormat
- 将请求参数或表单数据中的日期字符串解析为 Java 的日期对象
@PathVariable
- 将 URL 中的一部分作为参数传递给控制器方法
Service
@Service
- 标记一个类为服务层组件,表示该类负责封装业务逻辑,提供服务功能
Test
@SpringBootTest
- 启动完整的 Spring 应用上下文,并加载配置文件,以便于测试
@Test
- 标记一个方法为测试方法,JUnit 框架在运行测试时会自动识别并执行这些方法
@BeforeAll
- 标记测试类中的方法,以便在所有测试方法执行之前执行某些初始化操作
@AfterAll
- 标记测试类中的方法,以便在所有测试方法执行之后执行某些清理操作
Verify
@Valid
- Spring 会自动对该对象进行验证,确保它符合所有定义的约束条件
@Validated
- 扩展了 @Valid 的功能,支持分组验证和方法级别的校验
@NotBlank
- 用于校验字符串是否为空或仅包含空白字符
@Size
- 用于校验集合、字符串或数组的大小是否在指定范围内
@Email
- 用于校验字段是否符合标准的电子邮件格式
@Pattern
- 用于使用正则表达式对字段的值进行校验
@Min
- 校验数字元素的最小值,确保其值大于等于指定的最小值
@Max
- 校验数字元素的最大值,确保其值小于等于指定的最大值
@DecimalMin
- 校验 BigDecimal 类型字段的最小值,确保其值大于等于指定的最小值
- `@DecimalMax
- 校验 BigDecimal 类型字段的最大值,确保其值小于等于指定的最大值
Exception
@ExceptionHandler
- 在控制器类中来处理特定类型的异常
@RestContrllorAdvice
- 组合注解,统一处理应用中的异常并返回统一的错误响应
- @ControllerAdvice
- @ResponseBody
- 组合注解,统一处理应用中的异常并返回统一的错误响应
@ControllerAdvice
- 定义全局异常处理器
@ResponseStatus
- 为异常处理方法指定一个特定的 HTTP 状态码
Cloud
@EnableDiscoveryClient
- 服务注册:将当前微服务注册到服务注册中心,使得其他服务可以通过服务名发现并调用该服务
- 服务发现:使当前服务能够发现其他已注册到服务注册中心的服务,从而实现服务之间的相互调用
@EnableFeignClients
- 启用 Feign 客户端的功能,允许应用通过 @FeignClient 注解定义的接口来调用远程服务
- 扫描类路径中所有标注了 @FeignClient 注解的接口,并为每个接口生成一个 Feign 客户端代理实例
Plugins
Swagger
@EnableSwagger2WebMvc
- 开启 Swagger2 的 API 文档生成功能,并提供一个 Web 界面来展示和测试这些文档
@Api
- 标记一个接口类,并为其提供额外的描述信息。这些信息会被 Swagger 用于生成 API 文档。
ApiOperation
- 用于描述 RESTful API 的操作方法
@ApiModel
- 为模型类提供一个简洁的描述,说明该类所代表的含义、作用和上下文等信息
@ApiModelProperty
- 用于描述模型类中的属性信息
Lombok
@Data
- 组合注解
- @Getter
- @Setter
- @EqualsAndHashCode
- @NoArgsConstructor
- @AllArgsConstructor
- 组合注解
@Getter
- 自动生成指定字段的 getter 方法
@Setter
- 自动生成指定字段的 setter 方法
@EqualsAndHashCode
- 自动生成 equals() 和 hashCode() 方法
@NoArgsConstructor
- 自动生成一个 无参构造器
@AllArgsConstructor
- 自动生成一个 包含所有字段的有参构造器
@Builder
- 为当前类自动生成一个静态内部构建器类,允许通过链式调用的方式设置对象属性
MyBatis
-
@Mapper
- 标记一个接口,表明该接口是一个 MyBatis 的 Mapper 接口
-
@Select
-
@Insert
-
@Update
-
@Delete
-
@Options
-
@Param
-
@TableName
-
@TableId
-
@TableField
-
@TableLogic
-
@Version
un
-
@Conditional
-
@ConditionalOnClass
-
@ConditionalOnMissingClass
-
@ConditionalOnBean
-
@ConditionalOnMissingBean
-
@ConditionalOnProperty
-
@ConditionalOnExpression
-
@Slf4j
-
@PreAuthorize
-
@Secured
-
@CrossOrigin
-
@Constraint
-
@Target
-
@Retention
-
@interface
-
@EnableTransactionManagement
-
@Transactional
-
@WebFilter
-
@Aspect
-
@Pointcut
-
@Advice
-
@Before
-
@After
-
@AfterReturning
-
@AfterThrowing
-
@Around
-
@EnableBinding
- 绑定到消息中间件中的特定队列或主题,启用消息通道,并通过这些通道将消息发送到消息中间件
Last updated on